exports.guid = function () {
  var s = []
  var hexDigits = '0123456789abcdef'
  for (var i = 0; i < 36; i++) {
    s[i] = hexDigits.substr(Math.floor(Math.random() * 0x10), 1)
  }
  s[14] = '4' // bits 12-15 of the time_hi_and_version field to 0010
  s[19] = hexDigits.substr((s[19] & 0x3) | 0x8, 1) // bits 6-7 of the clock_seq_hi_and_reserved to 01
  s[8] = s[13] = s[18] = s[23] = '-'

  var uuid = s.join('')
  return uuid
}

function dateFormat(fmt, date) {
  const o = {
    'M+': date.getMonth() + 1, // 月份
    'd+': date.getDate(), // 日
    'h+': date.getHours(), // 小时
    'm+': date.getMinutes(), // 分
    's+': date.getSeconds(), // 秒
    'q+': Math.floor((date.getMonth() + 3) / 3), // 季度
    'S': date.getMilliseconds() // 毫秒
  }
  if (/(y+)/.test(fmt)) {
    fmt = fmt.replace(RegExp.$1, (date.getFullYear() + '').substr(4 - RegExp.$1.length))
  }
  for (var k in o) {
    if (new RegExp('(' + k + ')').test(fmt)) {
      fmt = fmt.replace(RegExp.$1, (RegExp.$1.length == 1) ? (o[k]) : (('00' + o[k]).substr(('' + o[k]).length)))
    }
  }
  return fmt
}

exports.yyyyMMddhhmmss = function () {
  return dateFormat('yyyy-MM-dd hh:mm:ss', new Date())
}

exports.isEmpty = function (str) {
  const result = (str == '' || str == null || str == undefined)
  return result
}

exports.getDuFromDu = function (du) {
  if (du.indexOf('.') === -1) {
    return du
  }
  const split = du.split('.')
  return split[0]
}

exports.getFenFromDu = function (du) {
  if (du.indexOf('.') === -1) {
    return 0
  }
  parseFloat()
  return result
}

exports.getMiaoFromDu = function (du) {
  if (du.indexOf('.') === -1) {
    return 0
  }
  return result
}

exports.d2dfm = function (val) {
  val = val + ''
  let i = val.indexOf('.')
  let strDu = i < 0 ? val : val.substring(0, i) // 获取度
  let strFen = 0
  let strMiao = 0
  if (i > 0) {
    strFen = '0' + val.substring(i)
    strFen = strFen * 60 + ''
    i = strFen.indexOf('.')
    if (i > 0) {
      strMiao = '0' + strFen.substring(i)
      strFen = strFen.substring(0, i) // 获取分
      strMiao = strMiao * 60 + ''
      i = strMiao.indexOf('.')
      strMiao = strMiao.substring(0, i + 4) // 取到小数点后面三位
      // strMiao = parseFloat(strMiao).toFixed(0) // 精确小数点后面两位
      strMiao = parseInt(strMiao)
    }
  }
  let buf = new Array(3)
  buf.push(strDu)
  buf.push(strFen)
  buf.push(strMiao)
  return buf
}

